﻿using System;
using ScrobbleItSL.Data;
using ScrobbleItSL.LastFmApi;

namespace ScrobbleItSL.Models
{
    public interface IUserModel
    {
        //void AuthUser();
        User User { get; set; }

        event EventHandler<UserEventArgs> UserAuthenticated;
        event EventHandler<LastFmErrorEventArgs> AuthenticationFailed;

        void OnUserAuthenticated();
        void OnAuthenticationFailed(LastFmErrorEventArgs eventArgs);
    }

    public class UserEventArgs : EventArgs
    {
        private readonly User user;

        public User User
        {
            get { return user; }
        }

        public UserEventArgs(User user)
        {
            this.user = user;
        }
    }
}